package pe.com.bbva.efcap.servidor.servicio.impl;

import java.util.ArrayList;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import pe.com.bbva.efcap.servidor.bean.IndicadorBean;
import pe.com.bbva.efcap.servidor.dao.IndicadorDAO;
import pe.com.bbva.efcap.servidor.modelo.entidad.Indicador;
import pe.com.bbva.efcap.servidor.servicio.IndicadorService;

@Service
@Transactional(readOnly = true)
public class IndicadorServiceImpl implements IndicadorService {
	
	@Autowired
	private IndicadorDAO indicadorDAO;

	private static final Logger LOGGER = LoggerFactory.getLogger(IndicadorServiceImpl.class);

	@Override
	public List<IndicadorBean> obtenerListaIndicadoresPorCatalogo(String catalogo) {
		try {
			List<Indicador> indicadorList = indicadorDAO.obtenerListaIndicadoresPorCatalogo(catalogo);
			List<IndicadorBean> indicadorListBean = new ArrayList<IndicadorBean>();			
			for (Indicador i : indicadorList){
				IndicadorBean ind = new IndicadorBean();
				ind.setCodigo(i.getCodigo());
				ind.setDescripcion(i.getDescripcion());
				ind.setTipo(i.getTipoTipo().getNombreCorto());
				indicadorListBean.add(ind);
			}
			return indicadorListBean;
		} catch (Exception e) {
			// TODO Auto-generated catch block
			LOGGER.error("IndicadorServiceImpl -> obtenerListaIndicadoresPorCatalogo: " + e.getMessage(), e);
			return null;
		}
	}

	
}
